一、MyBatis Generator 诞生背景
虽然MyBatis是一个简单易学的框架,但是配置XML文件也是一件相当繁琐的一个过程,而且会出现很多不容易定位的错误。当在工作中需要生成大量对象的时候,有太多的重复劳动,简直是生无可恋。所以,官方开发了 MyBatis Generator。它只需要很少量的简单配置,就可以完成大量的表到Java对象的生成工作,拥有零出错和速度快的优点,让开发人员解放出来更专注于业务逻辑的开发。
二、MyBatis Generator 简介
官网的MyBatis Generator使用介绍,请点击下面的链接:MyBatis Generator官网介绍
MyBatis Generator 生成的文件包含三类:
- Model实体文件,一个数据库表对应生成一个 Model 实体;
- Mapper接口文件,数据数操作方法都在此接口中定义;
- Mapper XML配置文件
三、创建一个springboot项目
这段代码就不贴了
四、引入依赖
1 2 3 4 5 6 7 8 9 10 11
| <!-- mybatis generator 自动生成代码插件 --> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.7</version> <configuration> <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile> <overwrite>true</overwrite> <verbose>true</verbose> </configuration> </plugin>
|
五、yml配置
resource文件夹下的application.properties文件删除,创建一个新的application.yml配置文件,在里面写相关配置,然后添加下面这个……
1 2 3 4 5 6 7 8
| mybatis: # mapper映射xml文件的所在路径 mapper-locations: classpath:mapping
|
六、xml配置
就是下面这个东西,当然,什么创建数据库啊啥的我就不写了……
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <!-- 数据库驱动:选择你的本地硬盘上面的数据库驱动包 这玩意儿要下载,去网上搜一下下载下来--> <classPathEntry location="E:\dataSourceDriver\mysql-connector-java-5.1.6.jar"/> <context id="DB2Tables" targetRuntime="MyBatis3"> <commentGenerator> <property name="suppressDate" value="false"/> <!-- 是否去除自动生成的注释 true:是 : false:否 --> <property name="suppressAllComments" value="true"/> </commentGenerator> <!--数据库链接URL,用户名、密码 --> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1/test" userId="root" password="root"></jdbcConnection> <javaTypeResolver> <property name="forceBigDecimals" value="false"/> </javaTypeResolver> <!-- 生成模型的包名和位置--> <javaModelGenerator targetPackage="com.wzp.wzx.admin.entity" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> <property name="trimStrings" value="true"/> </javaModelGenerator> <!-- 生成映射文件的包名和位置--> <sqlMapGenerator targetPackage="mapping" targetProject="src/main/resources"> <property name="enableSubPackages" value="true"/> </sqlMapGenerator> <!-- 生成DAO的包名和位置--> <javaClientGenerator type="mapper" targetPackage="com.wzp.wzx.admin.mapper" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> </javaClientGenerator> <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名--> <table tableName="Admin" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table> </context> </generatorConfiguration>
|
注意:上面文件里面相应的位置根据自己的项目去更改,然后下面这玩意儿要下载,去网上搜一下下载下来
1
| <classPathEntry location="E:\dataSourceDriver\mysql-connector-java-5.1.6.jar"/>
|
七,启动
1、点击Edit Configurations
2、添加运行配置
3、点击运行
4、最后生成的文件目录
5、打开类SpringbootApplication.java,我们需要添加一个注解
@MapperScan(“com.winter.mapper”) //将项目中对应的mapper类的路径加进来就可以了
八、结尾
测试我就没有贴出来了,可以自己写一个Controller测一下,文章中还有很多也没有贴,只是贴了稍微重要的,比如对于生成后的文件内容这些就没有贴了(毕竟每个人的数据库表不一样,内容就不一样的……)